草庐IT

python - txredisapi 异步订阅和监听

全部标签

javascript - 从浏览器插件 (NPAPI) 生成异步 Javascript 事件

我正在编写一个网络浏览器插件(NPAPI)。我的插件启动了一个工作线程,随着工作线程的进行,我想将事件传回Javascript。但由于NPAPI线程模型,工作线程直接回调NPAPI是不合法的,因此工作线程无法调用Javascript。对此的一种解决方案是NPN_PluginThreadAsyncCall函数。但这是一个比较新的功能。例如,只有Firefox3才支持它。有没有办法在不使用NPN_PluginThreadAsyncCall的情况下从NPAPI插件获取异步事件传递/javascript执行?在添加此功能之前人们做了什么? 最佳答案

javascript - 您如何以编程方式确定 HTML 对象可以监听哪些事件?

我一直在查看developer.mozilla.org上的文档和Apple开发文档,但我找不到说明您是否可以通过编程方式确定特定HTML标记是否支持给定eventListener的文档。就像我知道标签不支持点击监听器,因为没有什么可以点击,但我怎么知道呢?或者除此之外,是否有关于每个标签支持哪些事件的简单引用? 最佳答案 根据PerfectionKills,除了少数极端情况,是的,您可以:Thetrickisthatmanymodernbrowsersreportpropertycorrespondingtoaneventnamea

javascript - Puppeteer:如何监听对象事件

是否可以监听页面内对象派发的事件?假设我在要访问的页面中有这段代码:varevent=newCustomEvent('status',{detail:'ok'});window.addEventListener('status',function(e){console.log('status:',e.detail);});setInterval(window.dispatchEvent,1000,event);我希望能够监听由窗口对象(或与此相关的任何其他JS对象)分派(dispatch)的事件。我如何在Puppeteer中执行此操作? 最佳答案

javascript - 在 javascript 中复制 python 的 __call__?

我想使用模块模式不复制实例化一个可调用类。以下是我对此的最佳尝试。但是,它使用了我不确定的__proto__。这可以在没有__proto__的情况下完成吗?functionclasscallable(cls){/**Replicatethe__call__magicmethodofpythonandletclassinstances*becallable.*/varnew_cls=function(){varobj=Object.create(cls.prototype);//createcallable//weusefunc.__call__becausecallmightbedef

javascript - 通过 JavaScript 的异步跨域 POST 请求?

我可以只创建一个表单并使用它向任何网站发出POST请求,问题是FORM方法不是异步的,我需要知道页面何时完成加载。我尝试使用带有内部表单的iframe解决这个问题,但没有成功。有什么想法吗?编辑不幸的是,我无法控制响应数据,它从XML、json到简单文本不等。 最佳答案 您可以捕获iframe的onload事件。将您的form定位到iframe并监听onload。但是,您将无法访问iframe的内容,只能访问事件。尝试这样的事情:...脚本block:varloadComplete=0functionloaded(){//avoid

javascript - Javascript 事件监听器是否需要在删除它们所附加的元素之前被删除?

假设我已将各种事件监听器附加到各种表单元素。后来,我想删除整个表格。是否有必要(或建议)注销存在于表单及其元素上的任何事件处理程序?如果是这样,删除元素集合上所有监听器的最简单方法是什么?不这样做的后果是什么?如果重要的话,我正在使用Prototype。这就是我实际在做的事情。我有一个简单的表格,如下所示:我观察输入的各种事件,例如:$('foo').observe('keypress',onFooKeypress);$('bar').observe('keypress',onBarKeypress);等等表单通过AJAX提交,响应是表单的新副本。我用新表单的副本替换旧表单,执行类似$

javascript - 等待异步 javascript 函数返回

我正在使用第三方库提供的函数。这个函数接受一个回调函数作为参数,但我想等这个回调函数被调用后再继续。是否有标准/可接受的方法来执行此操作? 最佳答案 我不确定这是否适合您,但您可以通过将代码分成2个函数来实现预期的结果。假设这是你打算做的:基本上这是您的原始功能:functionorigFunc(){codeBeforeThirdPartyFunc();ThirdPartyFunc(oldCallBackFunc);Wait();codeAfterCallBackFunc();}您可以修改代码流,例如:functionnewFunc

Javascript 异步执行 : will a callback interrupt running code?

我只是希望有人能为我澄清这一点。如果我使用node.js在服务器端运行以下代码,不在浏览器中:console.log("a");db.get('select*fromtable1',function(result){console.log("b");});console.log("c");假设数据库调用是异步的我应该得到结果acb但是如果我要将以下行添加到我的代码底部while(1);那么b永远不会执行,对吗? 最佳答案 如果您谈论的是客户端javascript执行,那么您是正确的(直到浏览器决定停止您的无限循环)。客户端javas

javascript - 为您的网站异步加载谷歌翻译小部件的方法?

有没有办法为您的网站异步加载Google翻译小部件?我尝试将它放在我的页面底部,但#google_translate_element容器仍然是空的。functiongoogleTranslateElementInit(){newgoogle.translate.TranslateElement({pageLanguage:'en',includedLanguages:'ar,bg,bn,de,el,eo,es,en,fr,hi,id,it,iw,ja,ko,pl,pt,ru,th,tr,vi,zh-CN',layout:google.translate.TranslateElement

JavaScript:while 循环中的异步方法

我正在处理一个项目,该项目要求我将JavaScript与API方法调用结合使用。我是一名Java程序员,之前从未进行过Web开发,所以我遇到了一些麻烦。此API方法是异步的,并且处于while循环中。如果它返回一个空数组,则while循环结束。否则,它会循环。代码:vardone=true;do{async_api_call("method.name",{//Dostuff.},function(result){if(result.error()){console.error(result.error());}else{//Setsthebooleantotrueifthereturn